2 POKE53280,7:POKE53281,0 4 PRINT"[147]";SPC(7);"***** SALVAGE DIVER! *****" 6 PRINT"";SPC(13);"A C-64 PROGRAM" 7 PRINT"";SPC(11);"(C) COPYRIGHT 1984" 8 PRINT"";SPC(13);"BY B.W.BEHLING" 10 PRINTSPC(3);" PLEASE WAIT. READING DATA......." 12 FORB=0TO4:FORI=0TO62 14 READA:POKE(240+B)*64+I,A 16 NEXTI:NEXTB 18 DIMT$(56),T(56,1):FORI=0TO56:READW$:READW:T$(I)=W$:T(I,0)=W:T(I,1)=0:NEXTI 20 FORI=49152TO49301:READA:POKEI,A:NEXTI 22 FORI=49408TO49575:READA:POKEI,A:NEXTI:RESTORE 24 FORI=0TO62:POKE246*64+I,0:NEXTI 30 MA=15766:POKEMA,195:POKEMA+3,102:POKEMA+6,60:POKEMA+9,24:POKEMA+12,60 32 POKEMA+15,102:POKEMA+18,195 34 FORI=0TO62STEP3:FORN=2TO0STEP-1 36 READA:GOSUB100 38 POKE245*64+(I+N),A2:NEXTN:NEXTI 40 REM***** START ***** 50 WD=0:WL=0:WD$="0.00":WL$="0.00":BA=0:DI=3:DD=0:DA=2000:DA$="2000" 52 V=53248:M=2040:POKEV+21,0:POKEV+38,7:POKEV+37,10:POKEV+28,128:S1=1024 54 S2=1944:POKEV+27,0:POKEM+6,246:K=54272:C1=55296:C2=56216 56 FORI=39TO44:POKEV+I,11:NEXTI:POKEV+45,1:POKEV+46,4 58 FORI=0TO10STEP2:POKEV+I,0:NEXTI:POKEV+16,0:GOTO600 60 REM***** DRAW SCREEN ***** 61 PRINT"[147]":POKE53280,6:FORI=0TO79:POKES1+I,160:POKEC1+I,1:NEXTI 62 FORI=80TO159:POKES1+I,160:POKEC1+I,14:NEXTI 64 FORI=0TO80:POKES2+I,160:POKEC2+I,12:NEXTI 66 PRINT" Y";SPC(15);"[149][221]" 68 PRINT" Y";SPC(12);"Y [149][192][219][192] Y";SPC(12);"Y" 70 PRINT" Y";SPC(12);"Y [149][171][152][192][192][192][192][192][192][192][192][192][192][192][149][179]";SPC(8);"Y" 72 PRINT" Y";SPC(12);"Y [149][221]";SPC(7);"Y [149][221] Y Y" 74 PRINT" Y";SPC(12);"Y[149][192][192][219][192][192] Y [149][192][219][192]Y Y" 76 PRINT" Y Y";SPC(9);"Y [149][221]  [146]Y [149][221] Y Y Y" 78 PRINT" Y Y";SPC(9);"Y [149][221]  [146]Y [149][221] Y Y Y Y" 80 PRINT" Y Y Y Y [149][221] [155]^  [146]Y[155]^ [149][221] Y Y Y Y" 82 PRINT" Y Y Y [155]^Y [149][221]Y [155] [163][163][163] [146] [149][221] Y Y Y Y" 84 PRINT" Y Y Y [155][209] [209][146] [149][221]Y [155] [209] [209] [209] [146] [149][221] [178][178][178][178] Y Y" 86 PRINT" Y YY[155][223] [223][146][149][178][178][178][178][155] [146][149][178][178][219][178][178][155] [146][149][178][178][219][178][155] [146] Y Y" 88 PRINT" Y YY [155][223]S.S. [163][163][163] [163][163][163][163][163][163][163] [209] [209] [146] Y Y" 90 PRINT" Y YY [155][223]MARIE [209] [209] [209] [209] [146][169][181] Y Y" 92 PRINT" Y YY [149][223] [146][169]Y[149] [146] Y Y" 99 RETURN 100 REM***** SHARK REVERSE DATA ***** 102 IFA=255ORA=0THENA2=A:RETURN 104 A2=0:FORP=7TO0STEP-1:Z=INT(A/2^P) 106 IFZ=0THENGOTO110 108 A2=A2+2^(7-P):A=A-(Z*2^P) 110 NEXTP:RETURN 150 REM** UPDATE SHARK Y ** 152 YU=INT(RND(0)*240):IFYU<170THEN152 154 POKEV+((2*D)+1),YU 156 RETURN 200 REM***** UPDATE SHARK X ***** 202 D=INT(RND(1)*6):POKE49395,D:POKE49396,D*2 204 POKE49393,(INT(RND(0)*5)):POKE49394,(5+QQ) 206 POKE49397,(2^D):POKE49398,(255-2^D) 208 SYS49152:SYS49408:GOSUB350:SYS49152 210 SG=PEEK(V+30):SG=PEEK(V+30):IFSG>128ANDSG<192THENGOSUB430:GOTO218 212 IFSG>64ANDSG<128THENPOKEV+21,191:GOSUB402:GOSUB550 214 CY=PEEK(V+16):CY%=2^D:IFCY=CY%ANDPEEK(V+(2*D))>88THENGOSUB150 216 RETURN 218 PRINT"";TAB(12);" SHARK GOT YOU! [146]":DD=DD+1:POKEK+24,0 220 FORI=0TO3000:NEXTI 222 PRINT"";TAB(12);"[154] [146]":GOTO450 300 REM***** DIVER FINISHED ***** 302 IFBA<=0THENRETURN 304 WL=WL+WD:WL$=STR$(WL):WD=0:WD$="0.00":BA=0:BA$="0" 306 PRINT"";TAB(33-LEN(WL$));" NET $";WL$ 308 PRINT" TREASURE # 0 DIVER HAS $0.00" 310 PRINT"";SPC(14);" GOOD WORK!! " 312 FORI=0TO3000:NEXTI 314 PRINT"";TAB(12);"[154] [146]":GOTO450 350 REM***** UPDATE TIMER ***** 352 IFPEEK(V+15)<81THENGOSUB300 354 DA=DA-(INT(RND(0)*2)+1) 356 QS=QS+1:IFQS>150THENQS=0:QQ=QQ+2 358 IFDA<=0THENPRINT" OUT OF AIR!! ":DD=DD+1:GOTO378 360 DA$=STR$(DA) 362 IFDA<100THENBK=BK+1:IFBK<>2THENBK=1 364 IFDA<100THENGOSUB420:SYS49152:ONBKGOTO370,374 366 IFDA<200THEN374 368 IFDA<500THEN372 370 PRINT" AIR";DA$;" LBS. ":GOTO376 372 PRINT"[158] AIR";DA$;" LBS. ":GOTO376 374 PRINT" AIR";DA$;" LBS. " 376 RETURN 378 FORI=0TO3000:NEXTI:POKEV+21,63:GOTO450 400 REM***** SOUNDS ***** 402 REM** BEEP ** 404 POKEK+1,20:POKEK+5,9:POKEK+6,248:POKEK+24,15:POKEK+4,17 406 FORU=1TO40:NEXTU:POKEK+4,16:FORI=0TO24:POKEK+I,0:NEXTI:RETURN 408 REM** GONG ** 410 FORI=0TO22:POKEK+I,0:NEXTI 412 POKEK+24,143:POKEK+5,16:POKEK+19,16 414 POKEK+6,252:POKEK+20,249:POKEK+4,21:POKEK+18,17 416 POKEK+1,68:POKEK+15,42:FORI=1TO200:NEXTI 418 POKEK+4,20:POKEK+18,16:FORI=1TO400:NEXTI:RETURN 420 REM** ALARM ** 422 FORI=0TO22:POKEK+I,0:NEXTI 424 POKEK+24,6:POKEK+5,80:POKEK+6,243:POKEK+3,4:POKEK+4,65:SYS49152 426 FORI=0TO100STEP4:POKEK+1,I:NEXTI:POKEK+4,64:FORI=1TO50:NEXTI:POKEK+4,64 428 RETURN 430 REM** SHARK ATTACK ** 432 FORI=0TO22:POKEK+I,0:NEXTI 434 POKEK+24,15:POKEK+5,80:POKEK+6,243:POKEK+3,4:POKEK+4,129 436 FORI=0TO140STEP4:POKEK+1,I:NEXTI:POKEK+4,128:FORI=1TO50:NEXTI:POKEK+4,128 438 RETURN 450 REM***** START DIVER ***** 452 BA=0:WD=0:WD$="0.00":IFDI<=0THEN650 454 DA=2000:DA$=STR$(DA):QQ=0:QS=0 456 DY=80:POKEV+15,DY:POKE(V+16),PEEK(V+16)AND127:POKEV+21,255 458 FORXD=0TO170:DN=DN+1:IFDN>1THENDN=0 460 POKEM+7,243+DN:POKEV+14,XD:NEXTXD:DI=DI-1 462 PRINT" AIR";DA$;" LBS. ";TAB(15);"DIVERS";DI 464 PRINT"";TAB(31-LEN(WL$));" NET $";WL$ 466 BA$="0":PRINT" TREASURE # 0 " 468 PRINT""TAB(24-LEN(WD$));" DIVER HAS $";WD$:GOTO550 500 REM***** DETERMINE TREASURE ***** 502 GT=PEEK(V+30) 504 IFGT>191THENPOKE(V+21),191:BA=BA+1:GOSUB408:GOTO508 506 RETURN 508 T%=INT(RND(0)*112):IFT%>56THENT%=0:GOTO514 510 IFT(T%,1)<>0THEN508 512 IFT%>11THENT(T%,1)=1 514 BA$=STR$(BA):PRINT" TREASURE #";BA$;" " 516 PRINT" YOU FOUND ";T$(T%);"!" 518 PRINT" VALUE $";T(T%,0):IFT(T%,0)=0THEN522 520 WD=VAL(WD$)+T(T%,0):WD$=STR$(WD) 522 FORL=0TO1500:NEXTL:FORI=0TO22:POKEK+I,0:NEXTI 524 FORI=80TO159:POKES1+I,160:POKEC1+I,14:NEXTI 526 PRINT""TAB(24-LEN(WD$));" DIVER HAS $";WD$ 550 REM***** MARK TREASURE ***** 552 POKE(V+16),PEEK(V+16)AND191 554 BY=INT(RND(0)*(190-236)+236):POKEV+13,BY 556 XM=INT(RND(0)*(24-255)+255):POKEV+12,XM:POKEM+6,246:POKEV+21,255:RETURN 600 REM***** MAIN PROGRAM ***** 602 FORI=0TO5:POKEM+I,240:NEXTI 604 FORI=0TO10STEP2:RS=INT(RND(0)*255):POKEV+I,RS:NEXTI 606 FORD=0TO6:GOSUB150:NEXTD:GOSUB60:POKEV+21,63 608 PRINT" AIR ";DA$;" LBS. ";TAB(15);"DIVERS";DI 610 PRINT"";TAB(31-LEN(WL$));" NET $";WL$ 612 BA$="0":PRINT" TREASURE # 0";TAB(27-LEN(WD$));" DIVER HAS $";WD$ 614 GOSUB450 616 GOSUB200:GOSUB500:SYS49152 618 GOTO616 650 REM***** GAME OVER ***** 652 POKEV+21,0:PRINTCHR$(147):POKE53280,0 654 PRINTSPC(9);"THE SEA HAS WON AGAIN!" 656 PRINT"";SPC(6);"HOWEVER, YOU HAVE RECOVERED;" 658 PRINT"";TAB(19-INT(LEN(WL$)/2));"$";WL$ 660 PRINT"";SPC(6);"WORTH OF ASSORTED TREASURE!!" 662 IFDD=0THEN670 664 IFDD=1THENPRINT" UNFORTUNATELY, YOU LOST A DIVER.":FE=12495:GOTO668 666 PRINT"";SPC(3);"UNFORTUNATELY, YOU LOST";DD;"DIVERS.":FE=DD*12495 668 PRINT"";SPC(2);"FUNERAL EXPENSES WILL COST $";FE;"[157]." 670 NT$=STR$(VAL(WL$)-FE):IFVAL(NT$)<=0THEN676 672 PRINT"";TAB(13);"YOUR PROFIT IS" 674 PRINT"";TAB(19-INT(LEN(NT$)/2));"$";NT$:GOTO682 676 IFVAL(NT$)=0THENPRINT"";SPC(8);"YOU DIDN'T MAKE A DIME!!":GOTO682 678 PRINT"";TAB(14);"YOUR LOSS IS" 680 PRINT"";TAB(19-INT(LEN(NT$)/2));"$";NT$ 682 PRINT"";SPC(12);"PLAY AGAIN (Y/N)?" 684 GETK$:IFK$=""THEN684 686 IFK$="Y"THEN 10 688 END 700 REM********** DATA ********** 702 REM***** SHARK DATA ***** 704 DATA0,0,0,0,0,0,0,16,0,0,48,0,0,120,1,0,254,7,127,255,206,223,255,252 706 DATA255,255,248,7,255,156,252,2,14,0,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 708 DATA0,0,0,0,0,0,0,0,0,0,0,0 710 REM***** DIVER SWIMMING 1 ***** 712 DATA0,0,128,0,0,0,0,8,0,0,128,0,0,0,0,2,0,0,40,255,0,43,255,8,26,138,33 714 DATA10,138,128,8,138,128,96,0,41,0,0,0,0,0,0,0,0,0 716 DATA0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 718 REM***** DIVER SWIMMING 2 ***** 720 DATA0,32,0,0,136,0,0,0,0,0,128,0,0,0,0,2,0,0 722 DATA40,255,0,43,255,0,26,138,41,10,138,128,8,138,128,32,0,32 724 DATA64,0,8,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 726 REM***** DIVER SWIMMING 3 ***** 728 DATA2,0,0,0,0,0,0,32,0,0,2,0,0,0,0,0,0,128,0,255,40,32,255,232,72,162,164 730 DATA2,162,160,2,162,32,104,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 732 DATA0,0,0,0,0,0,0,0,0,0 734 REM***** DIVER SWIMMING 4 ***** 736 DATA2,0,0,0,0,0,0,32,0,0,2,0,0,0,0,0,0,128,0,255,40,0,255,232,104,162,164 738 DATA2,162,160,2,162,32,8,0,8,32,0,1,64,0,0,0,0,0 740 DATA0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 742 REM***** TREASURE DATA ***** 744 DATA"A ROCK",0,"A GOLD CHAIN",800,"A SILVER BAR!",300,"A GOLD BAR!",1200 746 DATA"SOME GOLD COINS!",1500,"SOME SILVER COINS!",235 748 DATA"SOME LOBSTERS!",60,"A BEER CAN",0,"AN OLD TIRE",0 750 DATA"A HUMAN SKELETON!",0,"AN OLD SWORD",15,"A SILVER TRAY!",300 752 DATA"A DIAMOND RING!",1300,"A SOLID GOLD STATUE!!",9000 754 DATA"A RUBY CHALICE!",2200,"AN EMERALD BRACELET!",3200 756 DATA"A TIMEX WATCH.....IT TICKS!",2,"A BOX OF JEWELRY!",8765 758 DATA"A PLATINUM GOBLET!",5600,"A '67 CHEVY ENGINE!",35,"A KITCHEN SINK",6 760 DATA"A WW II DUD TORPEDO!",0,"A PAIR OF SHOES IN CEMENT!",0 762 DATA"A LARGE CHEST OF GEMS!!",135742,"A PHONE BOOTH!",0 764 DATA"A BROKEN COMPUTER",0,"AN ANTIQUE SILVER CROSS!",795,"A TOOL BOX",18 766 DATA"A SILVER CANDELABRA!",9875,"A CASE OF RARE BRANDY!",3200 768 DATA"A BARBERS CHAIR",65,"A JADE THRONE!!",237865,"A BRASS BED",150 770 DATA"A JEWELED CROWN!!",127335,"A SIGN 'ATLANTIS 15 KM.'!",0 772 DATA"A GOLD SCEPTER!",2400,"A DIAMOND TIARA!",56895,"A GOLD SHIELD!",4300 774 DATA"A JEWELED DAGGER",1695,"AN OUTBOARD MOTOR",95,"AN OLD RADIATOR",0 776 DATA"A JUNKED VOLKSWAGON",0,"A WW II FIGHTER PLANE!",3400,"A STEEL DESK",0 778 DATA"A DENTED COFFEE POT",0,"A BRASS COMPASS",135,"A POOL TABLE",35 780 DATA"SOME SILVER CANDLESTICKS",450,"AN OLD SODA MACHINE",23 782 DATA"A CAST IRON STOVE",0,"A BOX OF BRASS LOCKS",85,"AN EMPTY COFFIN!",0 784 DATA"A SAPPHIRE PENDANT!",1300,"A RUSTED SUIT OF ARMOR",75 786 DATA"A CRYSTAL VASE",40,"A CRATE OF DOORKNOBS",65,"A SHIPS WHEEL",0 788 REM***** JOYSTICK ML DATA ***** 790 DATA173,0,220,160,80,162,236,74,176,8,204,15,208,240,3,206 792 DATA15,208,74,176,8,236,15,208,240,3,238,15,208,74,176,47 794 DATA173,14,208,208,31,173,16,208,41,128,208,16,173,16,208,9 796 DATA128,141,16,208,169,80,141,14,208,96,234,234,173,16,208,41 798 DATA127,141,16,208,206,14,208,162,241,32,133,192,96,234,234,74 800 DATA176,37,162,243,32,133,192,238,14,208,240,30,169,80,205,14 802 DATA208,208,20,173,16,208,41,128,240,13,173,16,208,41,127,141 804 DATA16,208,169,0,141,14,208,96,234,234,173,16,208,9,128,141 806 DATA16,208,96,234,234,236,255,7,208,4,238,255,7,96,142,255 808 DATA7,96,234,234,0,0 810 REM***** SHARK X ML DATA ***** 812 DATA169,0,162,0,160,0,206,242,192,173,241,192,240,72,169,240 814 DATA172,243,192,153,248,7,174,244,192,189,0,208,208,42,173,16 816 DATA208,45,245,192,208,25,173,16,208,13,245,192,141,16,208,169 818 DATA90,174,244,192,157,0,208,173,242,192,208,202,96,0,0,173 820 DATA16,208,45,246,192,141,16,208,174,244,192,222,0,208,173,242 822 DATA192,208,179,96,0,0,169,245,172,243,192,153,248,7,174,244 824 DATA192,254,0,208,240,46,169,90,174,244,192,221,0,208,208,25 826 DATA173,16,208,45,245,192,240,17,173,16,208,45,246,192,141,16 828 DATA208,169,0,174,244,192,157,0,208,173,242,192,240,3,76,6 830 DATA193,96,0,0,173,16,208,13,245,192,141,16,208,173,242,192 832 DATA240,3,76,6,193,96,0,0